<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
  "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
  <!ENTITY % general-entities SYSTEM "../general.ent">
  %general-entities;
]>

<sect1 id="ch-system-creatingdirs">
  <?dbhtml filename="creatingdirs.html"?>

  <title>Создание каталогов</title>

  <para>Самое время создать структуру каталогов для новой системы LFS. Необходимо выполнить следующие команды, чтобы создать стандартное дерево каталогов:</para>

<screen><userinput>mkdir -pv /{bin,boot,etc/{opt,sysconfig},home,lib/firmware,mnt,opt}
mkdir -pv /{media/{floppy,cdrom},sbin,srv,var}
install -dv -m 0750 /root
install -dv -m 1777 /tmp /var/tmp
mkdir -pv /usr/{,local/}{bin,include,lib,sbin,src}
mkdir -pv /usr/{,local/}share/{color,dict,doc,info,locale,man}
mkdir -v  /usr/{,local/}share/{misc,terminfo,zoneinfo}
mkdir -v  /usr/libexec
mkdir -pv /usr/{,local/}share/man/man{1..8}
mkdir -v  /usr/lib/pkgconfig

case $(uname -m) in
 x86_64) mkdir -v /lib64 ;;
esac

mkdir -v /var/{log,mail,spool}
ln -sv /run /var/run
ln -sv /run/lock /var/lock
mkdir -pv /var/{opt,cache,lib/{color,misc,locate},local}</userinput></screen>

  <para>По умолчанию, созданные каталоги имеют права 755, но это нежелательно для всех каталогов. В командах приведенных выше, сделаны два изменения. Первое для каталога пользователя <systemitem
  class="username">root</systemitem>, и второе для каталогов временных файлов.</para>

  <para>Первое изменение  гарантирует, что не каждый может войти в каталог <filename class="directory">/root</filename> так же, как обычный пользователь будет работать со своим домашним каталогом. Следующее изменение гарантирует что любой пользователь может записывать в дерево каталогов <filename class="directory">/tmp</filename>, но не может удалять файлы других пользователей. Последнее запрещено так называемым <quote>sticky bit,</quote> - старший бит (1) в бит-маске 1777.</para>

  <sect2>
    <title>Примечания по поводу соответствия FHS</title>

    <para>Дерево каталогов основано на стандарте иерархий файловой системы (Filesystem Hierarchy Standard,FHS).  (спецификация доступна по ссылке <ulink url="https://wiki.linuxfoundation.org/en/FHS"/>). В FHS также указано
     необязательное наличие некоторых каталогов, таких как <filename
    class="directory">/usr/local/games</filename> and <filename
    class="directory">/usr/share/games</filename>. В этой книге будут созданы только необходимые каталоги. Однако вы свободны в ваших действиях, и можете создать эти каталоги в том числе.</para>

  </sect2>

</sect1>
